Added YUM implementation of OS package build tool#14203
Conversation
|
@fheinecke - this PR is large and will require admin approval to merge. Consider breaking it up into a series smaller changes. |
|
@fheinecke - this PR is large and will require admin approval to merge. Consider breaking it up into a series smaller changes. |
2 similar comments
|
@fheinecke - this PR is large and will require admin approval to merge. Consider breaking it up into a series smaller changes. |
|
@fheinecke - this PR is large and will require admin approval to merge. Consider breaking it up into a series smaller changes. |
3622a14 to
60e1ea2
Compare
|
@fheinecke - this PR is large and will require admin approval to merge. Consider breaking it up into a series smaller changes. |
|
@fheinecke - this PR is large and will require admin approval to merge. Consider breaking it up into a series smaller changes. |
|
@capnspacehook @timothyb89 Could you please take a look at this PR? |
timothyb89
left a comment
There was a problem hiding this comment.
Looks good to me, though with the caveat that I haven't really tested anything. Just a couple small questions!
| // * RPM migrations after new YUM pipeline is done | ||
| func artifactMigrationPipeline() []pipeline { | ||
| migrationVersions := []string{ | ||
| // These versions were migrated as a part of the new `promoteAptPipeline` |
There was a problem hiding this comment.
This seems a bit unclear to me given all the entries are commented out. Is it a "add the version temporarily to the list then comment it out once migrated" situation? Is there a procedure we could link to if it comes up in the future? (or does it matter?)
There was a problem hiding this comment.
That's exactly it. I can write up some docs somewhere... but outside of adding a new OS package repo type (like YUM or APK) it's pretty unlikely that we'll need to use this unless a customer complains about an old version being missing. It's really nice to have (greatly simplifies migrations) but will probably be very infrequently used after this PR is completed.
|
@fheinecke - this PR is large and will require admin approval to merge. Consider breaking it up into a series smaller changes. |
|
@fheinecke - this PR is large and will require admin approval to merge. Consider breaking it up into a series smaller changes. |
|
@fheinecke - this PR is large and will require admin approval to merge. Consider breaking it up into a series smaller changes. |
|
@fheinecke - this PR is large and will require admin approval to merge. Consider breaking it up into a series smaller changes. |
|
@fheinecke - this PR is large and will require admin approval to merge. Consider breaking it up into a series smaller changes. |
|
@fheinecke - this PR is large and will require admin approval to merge. Consider breaking it up into a series smaller changes. |
|
@fheinecke - this PR is large and will require admin approval to merge. Consider breaking it up into a series smaller changes. |
|
@fheinecke - this PR is large and will require admin approval to merge. Consider breaking it up into a series smaller changes. |
* Added YUM implementation of OS package build tool * Addressed PR comments * Added YUM migrations * Added curl to YUM dependencies * Changed pipelines to use golang:1.18.4-bullseye for Go * Implemented proper repo downloading logic * Fixed other merge conflicts * Added artifacts cleanup * Removed delete on s3 sync * Added RPM migrations * v8 migrations * Partial v8 migration * Migration remainder * Reduced requested resources * Updated resource limits per step * Added k8s stage resource limits to drone * Fixed format issue * Removed resource requests * Added `depends_on` support to dronegen * v8.3 migrations * Fixed parallelism * Removed migration parallelism * Fixed RPM base arch lookup * v6 and v7 YUM migration * Fixed missing ISA * Updated repo file path * Added logging * Removed vars from repo file * v8.3 migration first batch * v8.3 migration second batch * v9.0 migration * v9.1 migration * v9.2 migration * v9.3 first migration * v9.3 second migration * v10.0 migration * Removed migrations * Disabled shell linting non-issues * Fixed linter problem * More linter fixes
* Added YUM implementation of OS package build tool * Addressed PR comments * Added YUM migrations * Added curl to YUM dependencies * Changed pipelines to use golang:1.18.4-bullseye for Go * Implemented proper repo downloading logic * Fixed other merge conflicts * Added artifacts cleanup * Removed delete on s3 sync * Added RPM migrations * v8 migrations * Partial v8 migration * Migration remainder * Reduced requested resources * Updated resource limits per step * Added k8s stage resource limits to drone * Fixed format issue * Removed resource requests * Added `depends_on` support to dronegen * v8.3 migrations * Fixed parallelism * Removed migration parallelism * Fixed RPM base arch lookup * v6 and v7 YUM migration * Fixed missing ISA * Updated repo file path * Added logging * Removed vars from repo file * v8.3 migration first batch * v8.3 migration second batch * v9.0 migration * v9.1 migration * v9.2 migration * v9.3 first migration * v9.3 second migration * v10.0 migration * Removed migrations * Disabled shell linting non-issues * Fixed linter problem * More linter fixes
* Added YUM implementation of OS package build tool * Addressed PR comments * Added YUM migrations * Added curl to YUM dependencies * Changed pipelines to use golang:1.18.4-bullseye for Go * Implemented proper repo downloading logic * Fixed other merge conflicts * Added artifacts cleanup * Removed delete on s3 sync * Added RPM migrations * v8 migrations * Partial v8 migration * Migration remainder * Reduced requested resources * Updated resource limits per step * Added k8s stage resource limits to drone * Fixed format issue * Removed resource requests * Added `depends_on` support to dronegen * v8.3 migrations * Fixed parallelism * Removed migration parallelism * Fixed RPM base arch lookup * v6 and v7 YUM migration * Fixed missing ISA * Updated repo file path * Added logging * Removed vars from repo file * v8.3 migration first batch * v8.3 migration second batch * v9.0 migration * v9.1 migration * v9.2 migration * v9.3 first migration * v9.3 second migration * v10.0 migration * Removed migrations * Disabled shell linting non-issues * Fixed linter problem * More linter fixes
… into branch/v8 (#15350) Added YUM implementation of OS package build tool (#14203) * Added YUM implementation of OS package build tool * Addressed PR comments * Added YUM migrations * Added curl to YUM dependencies * Changed pipelines to use golang:1.18.4-bullseye for Go * Implemented proper repo downloading logic * Fixed other merge conflicts * Added artifacts cleanup * Removed delete on s3 sync * Added RPM migrations * v8 migrations * Partial v8 migration * Migration remainder * Reduced requested resources * Updated resource limits per step * Added k8s stage resource limits to drone * Fixed format issue * Removed resource requests * Added `depends_on` support to dronegen * v8.3 migrations * Fixed parallelism * Removed migration parallelism * Fixed RPM base arch lookup * v6 and v7 YUM migration * Fixed missing ISA * Updated repo file path * Added logging * Removed vars from repo file * v8.3 migration first batch * v8.3 migration second batch * v9.0 migration * v9.1 migration * v9.2 migration * v9.3 first migration * v9.3 second migration * v10.0 migration * Removed migrations * Disabled shell linting non-issues * Fixed linter problem * More linter fixes
…tional#14203) into branch/v9 (gravitational#15317) * Added YUM implementation of OS package build tool (gravitational#14203) * Added YUM implementation of OS package build tool * Addressed PR comments * Added YUM migrations * Added curl to YUM dependencies * Changed pipelines to use golang:1.18.4-bullseye for Go * Implemented proper repo downloading logic * Fixed other merge conflicts * Added artifacts cleanup * Removed delete on s3 sync * Added RPM migrations * v8 migrations * Partial v8 migration * Migration remainder * Reduced requested resources * Updated resource limits per step * Added k8s stage resource limits to drone * Fixed format issue * Removed resource requests * Added `depends_on` support to dronegen * v8.3 migrations * Fixed parallelism * Removed migration parallelism * Fixed RPM base arch lookup * v6 and v7 YUM migration * Fixed missing ISA * Updated repo file path * Added logging * Removed vars from repo file * v8.3 migration first batch * v8.3 migration second batch * v9.0 migration * v9.1 migration * v9.2 migration * v9.3 first migration * v9.3 second migration * v10.0 migration * Removed migrations * Disabled shell linting non-issues * Fixed linter problem * More linter fixes * Fixed merge issue with dropped function
… into branch/v10 (#15127) Added YUM implementation of OS package build tool (#14203) * Added YUM implementation of OS package build tool * Addressed PR comments * Added YUM migrations * Added curl to YUM dependencies * Changed pipelines to use golang:1.18.4-bullseye for Go * Implemented proper repo downloading logic * Fixed other merge conflicts * Added artifacts cleanup * Removed delete on s3 sync * Added RPM migrations * v8 migrations * Partial v8 migration * Migration remainder * Reduced requested resources * Updated resource limits per step * Added k8s stage resource limits to drone * Fixed format issue * Removed resource requests * Added `depends_on` support to dronegen * v8.3 migrations * Fixed parallelism * Removed migration parallelism * Fixed RPM base arch lookup * v6 and v7 YUM migration * Fixed missing ISA * Updated repo file path * Added logging * Removed vars from repo file * v8.3 migration first batch * v8.3 migration second batch * v9.0 migration * v9.1 migration * v9.2 migration * v9.3 first migration * v9.3 second migration * v10.0 migration * Removed migrations * Disabled shell linting non-issues * Fixed linter problem * More linter fixes
This PR has several inter-dependent changes:
go run . <args>togo run . <apt/yum> <args>)dnf config-managerandyum-config-managerindex.htmlto https://goteleport.com/docs/installation/Before this PR is merged I need to run migrations for old Teleport versions to populate the prod bucket with old release artifacts. Additionally much of it's functionality is dependent on https://github.com/gravitational/cloud-terraform/pull/701 being merged first.
This PR is ready for code review but not yet ready for merge.